home *** CD-ROM | disk | FTP | other *** search
/ Zoom 1 / Zoom (1995)(Active Software, Ground Zero).iso / utils / u607.dms / u607.adf / ThePlayer / Docs / Player61A.doc < prev    next >
Text File  |  1995-01-08  |  24KB  |  726 lines

  1. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  2. ­               The Player ® 6.1A 610.1 / 08.01.95        ­
  3. ­               Copyright © 1992-95 Jarno Paananen        ­
  4. ­                 Guru / Sahara Surfers            ­
  5. ­             A Sahara Surfers Product 1995            ­
  6. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  7.  
  8.  
  9.     Contents:
  10.         ­­­­­­­­­
  11.  
  12.     1. Foreword
  13.  
  14.     2. Distribution and copyrights
  15.  
  16.     3. Requirements
  17.  
  18.     4. Features
  19.  
  20.     5. P61con, the Converter
  21.         1. Converting Protracker-modules
  22.         2. Playing modules
  23.         3. Converting back to Protracker
  24.         4. Sample packer-selector
  25.         5. Preferences
  26.  
  27.     6. P61, the Player
  28.  
  29.     7. Using The Player in your own programs
  30.         1. Normal VBlank-version
  31.         2. Non-lev6-version
  32.         3. CIA-version with tempo
  33.         4. 68020-versions
  34.         5. Player61.i
  35.  
  36.     8. The Usecode-system
  37.  
  38.     9. Bugs?
  39.  
  40.     10. Hellos
  41.  
  42.     11. Contact address
  43.  
  44.  
  45.  
  46. 1. Foreword:
  47. ­­­­­­­­­­­­
  48.  
  49. This little utility was first started just for fun about two years ago and
  50. was meant just to my own use, but when I noticed that there weren't a GOOD
  51. Protracker-compatible replay available and after I saw a few tries to fix
  52. this (ProPacker, Prorunner, etc.) I decided to give other people a chance
  53. to play their Protracker-tunes FAST!
  54.  
  55. When designing the moduleformat, I also included packing and this 6.1
  56. packing method is the most efficient I've seen for this purpose.
  57.  
  58. Afterwards features like the two delta-formats have been introduced to keep
  59. this player on the edge of development.
  60.  
  61. I also made a converter to make it easier to use PT-modules.  It uses
  62. Reqtools and Powerpacker libraries (both by Nico François) so it can also
  63. load Powerpacked modules.  The converter is made as easy as possible to the
  64. user.
  65.  
  66.  
  67.  
  68. 2. Distribution and copyrights:
  69. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  70.  
  71.     This program and all other stuff coming in this package are
  72.                FULLY copyrighted by
  73.  
  74.                 Jarno Paananen / Guru of Sahara Surfers.
  75.         ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  76.  
  77. With the exception of Reqtools and Powerpacker libraries © by Nico François
  78. (You have made a big favour to all programmers on the Amiga!)
  79.  
  80. BUT!:
  81. ­­­­­
  82. You're allowed to make additions or modifications or what so ever to fit
  83. the playroutine to your own needs.  That's why the sources are here.  But,
  84. please: credits for the author and a copy to myself, if possible, so I can
  85. add your new features to the future releases!
  86.  
  87.  
  88. Contents of this package:
  89. ­­­­­­­­­­­­­­­­­­­­­­­­­
  90. P61Con                - The converter
  91. P61Con.info            - Da icon
  92. (P61                - The player)
  93. (P61.info            - Another icon)
  94. Player61A.guide            - Amigaguide format docs
  95. Player61A.guide.info        - More same stuff
  96. Player61A.doc            - ASCII format docs, this file
  97. Player61A.doc.info        - Do we have to take all these?
  98. Player61A.changes        - History of changes, bugfixes etc.
  99. 610.1.G                - The main thing, Replay source
  100. (610.1_devpac2.asm        - Same for DevPac2)
  101. (610.1_devpac3.asm        - And for DevPac3)
  102. 610.1.bin            - Binary version
  103. CIA_Example.G            - An example of how to use the CIA-version
  104. Player61.i            - Include file
  105. Vibtab                - Vibrato table
  106. Periods                - Periodtable with finetunes
  107. Periods.nft            - Same with no finetunes
  108.  
  109. (  ) = Not included (= not up to date)
  110.  
  111.  
  112. The normal disclaimer:
  113.  
  114. The author cannot be held liable for the suitability or accuracy of this
  115. manual and/or the program it describes.  Any damage directly or indirectly
  116. caused by the use or misuse of this manual and/or the program it describes
  117. is the sole responsibility of the user her/him self.
  118.  
  119.  
  120. A few words about distribution:
  121.  
  122. This program is freeware.  You can distribute it as long as _ALL_ files are
  123. included and not more than a nominal fee for copying is asked.  This program
  124. can _NOT_ be used for commercial purposes without written permission from
  125. the author and a contribution for development costs (like Coca-Cola :-).
  126. If you have suggestions or remarks about this program, or if you find any
  127. bugs, please let me know.
  128.  
  129. THIS MEANS: IF YOU ARE GOING TO USE THIS IN COMMERCIAL SOFTWARE YOU SHOULD
  130. AT LEAST ASK ME FIRST AND I WOULD BE GLAD TO RECEIVE SOMETHING AS A
  131. COMPENSATION FOR THE TROUBLE THIS THING HAS CAUSED ME, BECAUSE MAKING THIS
  132. HASN'T BEEN JUST FUN AND SUNSHINE... 
  133.  
  134. This was meant especially to software houses using this without my
  135. permission, like Team 17: From where the hell did you get that P41 you used
  136. in Super Frog?!?  It was never released due to P50.  I just gave it to some
  137. friends for beta testing...  If you want to clear your conscience, contact
  138. me.
  139.  
  140. To everyone: If you're going to use this player in your commercial
  141. software, you should know, that the one released is never the newest version
  142. and is always somewhat cut down.  If you contact (and pay...) me, you get
  143. misc stuff like sound effect engines with it, if you want.  And tidy
  144. conscience...
  145.  
  146.  
  147. The black list (programs using The Player without my permission (nor
  148. money :)
  149.  
  150. All are using the beta of P41A:
  151.  
  152. - Super Frog from Team 17 (see ya at Assembly'95...)
  153. - OverDrive from Team 17
  154. - Impossible Mission 2025 from MicroProse
  155.  
  156. At _least_.
  157.  
  158.  
  159. Thanks to these firms for contacting me before using The Player:
  160.  
  161. Bloodhouse - Stardust (Hi Everyone!)
  162.        - Super Stardust
  163. Core Design - Banshee (Hi Søren!)
  164.  
  165. Why is this list shorter?
  166.  
  167.  
  168.  
  169. 3. Requirements:
  170. ­­­­­­­­­­­­­­­­
  171.  
  172. - An Amiga computer (For PC look out for Midas)
  173. - Reqtools.library and Powerpacker.library
  174. - about 30 kB of memory for the converter, and if converting, 2 * (number
  175.   of patterns * 1024 + 1084) bytes for buffers
  176. - Works on 512kB machines, but more memory recommended, especially for
  177.   converting.
  178. - Kickstart 1.2 or greater.
  179. - Kickstart 2.0-style colors recommended (looks better)
  180.  
  181.  
  182.  
  183. 4. Features:
  184. ­­­­­­­­­­­­
  185.  
  186. - a very efficient method to pack the pattern data and play it VERY fast in
  187.   realtime
  188.  
  189. - cut-down header compared to the original one (4 bytes info, 6 bytes/sample,
  190.   8 bytes/pattern, 1 byte/position plus one byte for stopmark)
  191.  
  192. - removes all names, unused patterns, samples, data after loops, empty data
  193.   after unlooped samples, commands with no use and some smaller things
  194.  
  195. - Delta format samples!  Samples have the same quality, but packing
  196.   efficiency is better with for example Imploder or Powerpacker.  Look below
  197.   for some stats!
  198.  
  199. - 4-bit delta packing!  Packs samples in ratio 1:2 with very little loss of
  200.   quality.  Try it!
  201.  
  202. - nearly impossible to rip without finding the call to the init routine,
  203.   except if the optional `P61A`-sign is used
  204.  
  205. - works on every Amiga, under KS1.2-3.1, from WB or CLI/Shell, detaches
  206.   itself from CLI, supports WB icons, etc...
  207.  
  208. - loads files packed with Powerpacker, FImp or XPK (all references to
  209.   Powerpacked files also apply to FImp and XPK files)
  210.  
  211. Should support modules with 100 patterns (At least in PT2.x from Noxious)
  212. IF patterns are packed under 64kB in PASS 1... (pointers are only words)
  213.  
  214.  
  215. Commands implemented at the moment:
  216.   - NoiseTracker 2.0 commands (0-6,A-F)
  217.  
  218.   - Tremolo (7), Sample offset (9), Fine slides (E1/E2), Set finetune (E5),
  219.     Pattern loop (E6), Retrig note (E9), Fine volume slides (EA/EB),
  220.     Note cut (EC), Note delay (ED), Pattern delay (EE), Invert loop (EF)
  221.  
  222.   - finetune and tempo
  223.  
  224.   - NOTE!:Patternbreak (D) does NOT support break to a specified line,
  225.     linenumber is just ignored!  This is due to my packing system.
  226.  
  227.  
  228. Comparision to other players:
  229. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  230.  
  231. Some statistics:
  232. ­­­­­­­­­­­­­­­­
  233. Tunes:    1. ( alcoholic score )
  234.     2. enigma year bkh-nhp
  235.     3. knulla kuk !!!
  236.     4. menuloader
  237.     5. scrambled mind
  238.     6. tapiiri
  239.  
  240. Note that these are random tunes picked out from about 76Mb I
  241. have, and everyone should be able to test these results.
  242.  
  243.  
  244. Tune:            1    2    3    4    5
  245. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  246. Original:        121024    249550    160218    23390    163738
  247. P61A:            88704    204588    120062    16644    130650
  248. P60A:            90118    205984    121834    16992    131420
  249. NoisePacker 3.0:    93576*    214148*    128940*    17588    132736
  250. NoisePacker 2.02:    104560*    227770*    138218*    18292    140614
  251. ProPacker 1.0:        108028    226326    147302    20414    148742
  252. ProRunner 2.0:        98974    218588    132894    19338    143136
  253. Promizer 4.1:        103608    224778    136710    19762    147114
  254. TrackerPacker 3.0:    90992    209900    124434    17074    131578
  255.  
  256.  
  257. * = lacks some features (finetune, commands etc.)
  258.  
  259. Obvious?
  260.  
  261.  
  262. Some notes concerning this:
  263. ­­­­­­­­­­­­­­­­­­­­­­­­­­­
  264. (After reading the docs of Prorunner 2.0 I thought that maybe I should also
  265. write some advertisement bullshit here, but I decided to stay in the
  266. facts...)
  267.  
  268. - P61A is the fastest replay of these...
  269. - Has the best packing as seen above...
  270. - 4- and 8-bit delta samples (the first one to have these)...
  271. - Fully system friendly if needed (allocates channels, CIA's etc.)...
  272. - Works on all Amigas (the first released one to check the VBR)...
  273. - Supports CIA-tempos (the first one with no processor waits)...
  274. - Fully PC-relative replay (released before Cosmos...)
  275. - Has the so-much-praised master volume control...
  276. - Usecode-system
  277. - User-friendly converter (unlike NP2.0, PP1.0 and PRU2.0)...
  278. - Versions for Asm-One, DevPac3 and DevPac2...
  279.  
  280.  
  281. Enough?  If you still want to use some of those other players, feel free...
  282.  
  283.  
  284.  
  285. IF SOMEONE COULD SEND ME PROPACKER 2.x, PLEASE DO!
  286.  
  287.  
  288. Delta vs. normal samples:
  289. ­­­­­­­­­­­­­­­­­­­­­­­­­
  290. Tune:  ((( the war )))  by Audiomonster / Melon Dezign
  291.  
  292. Original P61 tune:    260182
  293. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  294.         Normal    Delta    Diff.
  295. FImp:        184828    168650    16178
  296. PP:        184812    162612    22200
  297. xpkNUKE:    187340    166684    20656
  298. xpkSQSH:    148600    144124    4476
  299.  
  300. Make your own conclusions.
  301.  
  302.  
  303.  
  304. 5. P61con, the Converter:
  305. ­­­­­­­­­­­­­­­­­­­­­­­­­
  306.  
  307. Note!: Do _NOT_ merge hunks in this file, because it uses two SEPERATE code
  308. hunks for detaching.  If you do, it crashes straight away...
  309.  
  310. Shell usage: P61con [-q][filename]
  311.  
  312. -q    Be quiet.  The only way to stop playing is to give CTRL-C-signal to
  313.     the DETACHED piece of code.  Use TaskX or similar.
  314.  
  315. filename to play.  No checkings made, so be sure it IS a P61-module!
  316.  
  317. WB usage is normal.  Double clicking on a modules icon or click on module,
  318. shift and click on P61con to play it.
  319.  
  320.  
  321.  
  322.     1. Converting Protracker-modules:
  323.     ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  324.  
  325. First a normal Reqtools filerequster asks you to select one or more
  326. (supports batch-processing) modules.  If you select multiple modules, the
  327. directory for the modules to be saved is asked.  Then loading with the 
  328. Powerpacker library.  If you chose one module, the name and path for the
  329. save are asked.  As the packing starts, an info requester with some bars and
  330. statistics pops up.  If you are converting only one module and have sample
  331. packing on, sample packer-selector appears.  When the job is done, save and
  332. some statistics about the efficiency are shown.  If you have converted only
  333. one module, also the Usecode is here.
  334.  
  335.  
  336.  
  337.     2. Playing modules:
  338.     ­­­­­­­­­­­­­­­­­­­
  339.  
  340. First the converter asks for a module and then loads it using the
  341. Powerpacker library so it can also be packed with the Powerpacker :) DOES
  342. NOT SUPPORT FILES WITH SAMPLES IN OTHER FILE!  If it finds P61 from the
  343. memory, it informs it to play the module.  If not, a requester is shown with
  344. the name of the file and a stop gadget below.  The play routine is the
  345. system friendly tempo one, allocates channels with priority 127, a CIA-
  346. timer and returns if it couldn't get something.  Should work with every
  347. system friendly program.
  348.  
  349. To the guys at Triumph: I'd say this IS faster than yours and multitasks at
  350. least as well as your IntuiTracker 1.50 (I crashed it about x times...) and 
  351. works on <2.0 Kickstarts, too.  Anyway, this wasn't meant to be a kind of
  352. player like yours, but maybe one is coming (depends on effort and requests
  353. from outside).
  354.  
  355.  
  356.  
  357.     3. Converting back to Protracker:
  358.     ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  359.  
  360. There is in fact the good old P50-ripper with support for 4-bit deltas.
  361.  
  362. This option is disabled to partly because I want to give people some
  363. peace from Perverter and alike ie. protect their modules from ripping.
  364. (I of course have my own version, which has this option implemented and
  365. enabled...)  So you have to make your own reconverter is you want to
  366. listen the modules in PT-format.
  367.  
  368. If you're clever enough you can enable the option, but it can only
  369. reconvert P60-modules :)
  370.  
  371. Usage is easy, just load P60A-module and save it as Protracker-module.  Be
  372. sure it IS a P60A-module, otherwise I can't quarantee the result...
  373.  
  374. In this version this feature is enabled, in request of Nemesis1 (Hi!)
  375.  
  376.  
  377.  
  378.     4. Sample packer-selector:
  379.     ­­­­­­­­­­­­­­­­­­­­­­­­­­
  380.  
  381. When you have sample packing-option on, a requester appears when you
  382. convert only one module.  It is used to select which samples are to be
  383. packed with 4-bit delta packing and has the following functions:
  384.  
  385. Original    -Plays the original sample.  Stop with right mouse button!
  386. Packed        -Plays the sample after packing and depacking it.  This
  387.          sounds same as the final packed sample.  Stop with right
  388.          mouse button!
  389. Pack        -Marks the sample to be packed.
  390. Pack rest    -Marks this and the rest of the samples to be packed.
  391. Don't pack    -Marks the sample NOT to be packed.
  392. Don't pack rest    -Marks this and the rest of the samples NOT to be packed.
  393.  
  394. Use of keyboard shortcuts is highly recommended!
  395.  
  396.  
  397.  
  398.     5. Preferences:
  399.     ­­­­­­­­­­­­­­­
  400.  
  401. Default loading directory:    The directory converter first gives you,
  402.                 when you load Protracker modules.
  403.  
  404. Default saving directory:    The directory converter first gives you,
  405.                  when you save ONE P61 module.
  406.  
  407. Default batch directory:    The directory converter first gives you,
  408.                 when you save multiple P61 modules.
  409.  
  410. Prefices:            These are used to mask files in
  411.                 filerequesters and put to the beginning of
  412.                 the filename when saving.  Can be up to 7
  413.                 chars long.
  414.  
  415. Two files:            If you want samples and rest of the tune to
  416.                 be saved in separate files.
  417.  
  418. P61A sign:            If you want the P61A sign to be inserted in
  419.                 the beginning of the module.
  420.  
  421. No samples:            If you're converting multiple modules with
  422.                 same samples, this disables the saving of
  423.                 samples.
  424.  
  425. Tempo:                Whether the player should use tempo or not.
  426.  
  427. Icon:                If you want the icon to be saved with the
  428.                 module.
  429.  
  430. Delta:                If you want to use 8-bit delta samples.
  431.  
  432. Sample packing:            If you want to pack samples to 4-bit delta.
  433.  
  434.  
  435. 6. P61, the Player:
  436. ­­­­­­­­­­­­­­­­­­­
  437.  
  438. This program was under work (and still is...) for quite a lot time.  The
  439. idea came from Simply / Parallax, due to the fact that Multiplayer can't
  440. play P50-modules without GMOD-header and that makes modules about 6kb
  441. larger...  So I had to get working.  Two days before Assembly'93 I rewrote
  442. this program completely in a big hurry, so please forgive me those bugs 
  443. that _will_ appear.  Present program is basically the same, but plays
  444. P61-modules.
  445.  
  446. The interface is now quite neat, small is beautiful?  Under KS3.0 those
  447. proportional gadgets are quite nice.  Functions should be familiar to all
  448. who have used some player program (Multiplayer, Smartplay etc.).  The only
  449. special feature is that if you try to load a Protracker module and you
  450. have P61con in memory waiting in its mainmenu, P61 gives this module to it
  451. to be packed.  P61con saves it to the ram-disk and informs P61 to load it.
  452. After loading P61 deletes the module from the ram-disk.
  453.  
  454.  
  455.  
  456. 7. Using The Player in your own programs:
  457. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  458.  
  459. NOTE: The instructions for the binaryfile-versions expect you to have
  460. loaded the file to a label called "Player"
  461.  
  462. The versions are in the same file and these topics describe the various
  463. possible versions to compile the source.  Also the binary versions have
  464. their instructions here.
  465.  
  466. Completely PC-relative!
  467.  
  468.  
  469.  
  470.     1. Normal VBlank version:
  471.     ­­­­­­­­­­­­­­­­­­­­­­­­­
  472.  
  473. Options:
  474.     CIA = 0
  475.     system = 0
  476.     nonlev6 = 0
  477.     system = 0/1
  478.  
  479.     Exec = 1 if ExecBase is valid and 0 if not
  480.  
  481. This should be easy for all you who've used the ugly Protracker routine or
  482. one of the millions of others.
  483.  
  484. Call "P61_Init" with the address to the module in A0 and the address to the
  485. samples in A1 or if they are in the same file, clear A1.  If you have a
  486. module with samples packed, put address to the sample buffer in A2.  Uses
  487. all registers, so preserve them if you're going to use them afterwards.
  488.  
  489.  
  490. IF YOU ARE USING INVALID EXECBASE:
  491. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  492. Check the Base yourself and put it to P61_VBR or Player+P61_UseVBR.  You
  493. can also get the VBR there, if using valid ExecBase.
  494.  
  495.  
  496. TO CHECK IF MODULE HAS PACKED SAMPLES:
  497. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  498. Check bit 6 ($40) of the offset 3 from the beginning (excluding optional
  499. sign).  If it is set, the module has packed samples.  Size of the required
  500. buffer is then at offset 4.
  501.  
  502.  
  503. To play the music, call P61_Music every frame (with NTSCs who want to play
  504. the tune in PAL-speed or vice versa, use the CIA-version).
  505.  
  506. To end the music and turn the DMAs off, call P61_End.
  507.  
  508. With system option = 1, allocation of channels and lev6-timer are included.
  509. Returns non-zero in D0, if couldn't allocate something.
  510.  
  511. With the binary file, P61_Init is Player+P61_InitOffset, P61_Music is
  512. Player+P61_MusicOffset and P61_End is Player+P61_EndOffset.
  513.  
  514. The source-version can be compiled with at least Asm-One 1.09 by T.F.A.
  515. (the Best assembler around!) but it should compile with nearly any
  516. assembler with incbin-command.
  517.  
  518. The maximum rastertime taken is under 6 lines on a normal 68000 Amiga.
  519. Fast?  Invert loop can take it beyond that, though.  Everything has its
  520. costs.
  521.  
  522.  
  523.  
  524.     2. Non-lev6 version:
  525.     ­­­­­­­­­­­­­­­­­­­­
  526.  
  527. Options:
  528.     CIA = 0
  529.     system = 0
  530.     nonlev6 = 1
  531.  
  532. This routine is basically the same as the lev6-version, but you have to
  533. call P61_Setloop about 7 raster lines after P61_Music.  This system is done
  534. to enable the use of those 7 lines.  So if have a routine, which fits to
  535. these 7 lines, do it while waiting...
  536.  
  537. This is not too much slower compared to the lev6-version, but I'd still
  538. advise you to use it if possible.  It makes your life a hell lot easier...
  539.  
  540.  
  541.  
  542.     3. CIA version with tempo:
  543.     ­­­­­­­­­­­­­­­­­­­­­­­­­­
  544.  
  545. Options:
  546.     CIA = 1
  547.     system = 0/1
  548.     nonlev6 = 0
  549.  
  550.     Exec = 1 if ExecBase is valid and 0 if not
  551.  
  552. The first tempoplayer I know, which uses only the lev6-int and does _NOT_
  553. use those fucking processor loops.  As fast as the normal lev6-version!
  554.  
  555. Otherwise normal init, but info for the setting of CIA is needed in D0:
  556. 0 - Autodetect, if PAL/NTSC, uses ExecBase->VBlankFrequency.
  557. 1 - Force PAL.  If you've destroyed the ExecBase, detect the timing
  558.     yourself and use these force modes.
  559. 2 - Force NTSC
  560.  
  561. No further actions needed.  Returns non-zero in D0, if it couldn't allocate
  562. something.  The player starts playing right away, so do _NOT_ call 
  563. P61_Music.
  564.  
  565. To end, call the normal P61_End.
  566.  
  567. To enable using of tempo, set P61_UseTempo to some non-zero value.
  568.  
  569. If system is set to 1, allocations for timer and channels are included.
  570. Use if possible.
  571.  
  572. NOTE: If you want to use this in your own program that needs synchronizing
  573. to the beam, do one of these:
  574.  
  575. 1. Do your routine in VBlank-interrupt.
  576. 2. Do your routine in copper interrupt.
  577. 3. If you do NOT have to wait for a specific line, wait for VBlank bit in
  578.    INTREQR ($1e) and clear it afterwards.
  579. 4. If you have to wait for some specified line, disable Copper-interrupt 
  580.    from INTENA ($9a), set Copper-interrupt bit in INTREQ ($9c) with Copper
  581.    at the specified line and wait for the bit in INTREQR ($1e) in our own
  582.    routine.  Clear it afterwards.
  583.  
  584. See the examples supplied.
  585.  
  586. Otherwise this WILL steal some frames from you time to time...
  587.  
  588.  
  589.  
  590.     4. 68020-versions:
  591.     ­­­­­­­­­­­­­­­­­­
  592.  
  593. Options:
  594.     opt020 = 1
  595.  
  596. These are a bit optimized versions for the 020+ machines.  The difference
  597. to the 000/010-versions is only a slight one and because those versions
  598. take only a half of a rasterline on a 25mhz A4000, I think these are nearly
  599. useless.  But if you really want to make a 020+ program or AGA-only stuff,
  600. this is for you...
  601.  
  602. Can be compiled at least with Asm-One 1.15 by T.F.A.
  603.  
  604. Interface is similar to the 000/010-versions.
  605.  
  606.  
  607.  
  608.     5. Player61.i:
  609.     ­­­­­­­­­­­­­­
  610.  
  611. This is the include file of all the structures needed, if you're going to
  612. compile the source.  Also if you are making some additions to this player
  613. (like quadrascopes, etc.  (these kind of things are maybe coming, I already
  614. have quite a bunch of 'em linked to this player)) you can look for the
  615. information there.  First I was going to release this only as a binary
  616. version, but after thinking a few more moments, I decided to make this
  617. include file and release the source, just to make supporting and developing
  618. of this product possible.
  619.  
  620.  
  621.  
  622. 8. The Usecode-system:
  623. ­­­­­­­­­­­­­­­­­­­­­­
  624.  
  625. This system was created for fun on a sunny afternoon.  I got a crazy idea
  626. of putting a code of which features a module needs to the beginning of the
  627. source and let conditional compiling take care of the rest.
  628.  
  629. The main idea is to reduce the lenght of this massive player to the real
  630. needs of the module.  So only the commands the module needs are saved to the
  631. player.  Also if the module doesn't use finetune, a smaller periodtable is
  632. used.  And finally if the module doesn't use vibrato or tremolo, the 512
  633. bytes long vibrato table is left out.
  634.  
  635. What you have to do is:
  636.  
  637. Take down the Usecode shown in the requester after the converter has packed
  638. your module (if only one module is being processed or from the filenote)
  639. and put this code to the beginning of the source into the place for it.
  640. Compile and you have a customised version for this module only.  Usecode -1
  641. leaves all features ie.  compiles the full version.
  642.  
  643. for example: 
  644.     use = $9f0f
  645.  
  646.  
  647.  
  648. 9. Bugs?:
  649. ­­­­­­­­­
  650.  
  651. Some of you might still remember (in horror...) the previous versions of
  652. this marvelous :) player.  Those 4.x-versions were all more or less beta-
  653. versions and that showed...  (previous versions weren't even released, thank
  654. god..)
  655.  
  656. This version hasn't gone through quite a hell of beta-testing, by myself, my
  657. Good friends Janne Juhola (Simply/Parallax Designs), Steffan Schumacher
  658. (Metal/Parallax Designs), Kari-Pekka Koljonen (Moonstone/Hippopotamus 
  659. Design), WDO/Carillon (never remember your name...Mikko?) and some
  660. others, but seems to work ok ;)
  661.  
  662.  
  663.  
  664. 10. Hellos:
  665. ­­­­­­­­­­­
  666.  
  667. A bit more hellos than in the converter to:
  668.  
  669. To all who make those nice multiformat-player-programs (Multiplayer,
  670. Smartplay, etc.): If you want some information about this format to be
  671. included in your program, or anything else, just let me know!
  672.  
  673. To Turbo and Marley of Infect (authors of Exotic ripper): You did it!  I
  674. just ask how?!?  You say it's deep search and it surely is.  Fab prog!
  675. The pattern format changed once again...  Some peace from Perverter and
  676. a like...
  677.  
  678.  
  679. And hellos especially to:
  680.  
  681. - Janne Oksanen / Stratos of Sahara Surfers -
  682. Nothing special to say, but hello.
  683.  
  684. - Petteri Kangaslampi / Alfred of Sahara Surfers -
  685. LIVE rules...  Thanks for help with the new format!  Hopefully Midas
  686. comes off great!
  687.  
  688. - Kari-Pekka Koljonen / Moonstone of Hippopotamus Design -
  689. Great sendings (when coming...).  Happy with this?
  690. HiP is Really Cool!
  691.  
  692. - John Hinge / Shayera of Spoon -
  693. Sorry for huge delay, but hopefully this gives some compensation...
  694.  
  695.  
  696.  
  697. 11. Contact address:
  698. ­­­­­­­­­­­­­­­­­­­­
  699.  
  700. I'm improving this utility for my own use (they made me release this!),
  701. but send me some $$$ (Finnish marks, please) or two disks with a return
  702. envelope WITH stamps (or International Response Coupon) and I'll send you
  703. the newest version (Mention which version you have, so I won't send the
  704. same version!) Also for licences for commercial use!
  705.  
  706.     TO                        (NO swapping!)
  707.                    J.Paananen
  708.                   Puskalantie 6
  709.                 FIN-37120 Nokia
  710.                 Finland
  711.  
  712.           Or by phone: +358-31-3422147 / Jarno
  713.  
  714.               Or preferably via Internet:
  715.  
  716.             Jarno_Paananen@sonata.fipnet.fi
  717.                 (NO UUENCODES!)
  718.                    or
  719.              jpaana@freenet.hut.fi
  720.  
  721.  
  722. NOTICE!!!
  723.  
  724. My freeport account (gurus2@freeport.uwasa.fi) died at new year
  725. so use either one of the others until I get myself a new account.
  726.